package com.specialized.orders.common.domain;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

@NoArgsConstructor
@Data
public class Distance {


    private String status;
    private String info;
    private String infocode;
    private String count;
    private RouteDTO route;
    private String distance;

    @NoArgsConstructor
    @Data
    public static class RouteDTO {


        private String origin;
        private String destination;
        private String taxiCost;
        private List<PathsDTO> paths;

        @NoArgsConstructor
        @Data
        public static class PathsDTO {
            //距离
            private Integer distance;
            //时长
            private Integer duration;
            private String strategy;
            private String tolls;
            private String tollDistance;
            private List<StepsDTO> steps;
            private String restriction;
            private String trafficLights;

            @NoArgsConstructor
            @Data
            public static class StepsDTO {
                private String instruction;
                private String orientation;
                private String distance;
                private String tolls;
                private String tollDistance;
                private List<?> tollRoad;
                private String duration;
                private String polyline;
                private String action;
                private String assistantAction;
                private List<TmcsDTO> tmcs;
                private List<CitiesDTO> cities;
                private String road;

                @NoArgsConstructor
                @Data
                public static class TmcsDTO {
                    private List<?> lcode;
                    private String distance;
                    private String status;
                    private String polyline;
                }

                @NoArgsConstructor
                @Data
                public static class CitiesDTO {
                    private String name;
                    private String citycode;
                    private String adcode;
                    private List<DistrictsDTO> districts;

                    @NoArgsConstructor
                    @Data
                    public static class DistrictsDTO {
                        private String name;
                        private String adcode;
                    }
                }
            }
        }
    }




}
